The use of computer systems and software programs to obtain, view, manipulate, and otherwise manage information has become an aspect of every day life. Due to limited display area, there has been an increasing desire to better organize and display information within a confined display area. Current techniques for organizing the display of information, and to generally simplify the use of computer programs in general, are frequently referred to as a Graphical User Interface (“GUI”). Current GUIs typically utilize some type of a control device, such as a mouse, or touch sensitive screen, to manipulate text, images, and other objects on a display screen. These objects may include icons, windows, menus, and other images which are frequently displayed through the use of computer programs.
A common characteristic of typical GUI's is the implicit design assumption of arranging display elements (windows, panes in window, objects in panes, icons, etc.) with a regularity that is easily accomplished in a digital system. For example, FIG. 1A and FIG. 1B illustrate the even boundaries 101,102,103,104,105, common orientations, and static behaviors of windows 110,111,112,113,114,115,116 common to both the tiled (FIG. 1A) and overlapped (FIG. 1B) versions of the same GUI. FIG. 2 illustrates a typical desktop GUI 200 with several icons 201n, and windows 202n, each of which are displayed with an implicit regularity.
Recent GUI techniques have been defined to take advantage of the physical arrangement of objects, such as the ‘pile’ metaphor. However, even these techniques, which arrange objects in neat and orderly piles, still exhibit the regularity typically found in other GUIs.
Some GUI techniques take advantage of the empty space on a screen to position windows so that they do not overlap. For example, Dynamic Space Management includes a window manager which finds the closest empty space to the original destination at which the dragged window can be dropped and avoids overlap by automatically moving the dragged window to this empty space. In a variation of this approach, the dragged window remains at its selected destination, but windows that overlap are automatically moved to the nearest available empty spaces.
Still other GUIs represent objects in a three dimensional graphical environment. Users may explicitly manipulate the objects and manipulations persist within the virtual environment. However, where information displays, such as two-dimensional document artifacts, are embedded in such environments, the various (flat) image surfaces each reflect the basic desktop GUI. For example, FIGS. 3A, 3B, and 3C illustrate three different GUIs of Microsoft's TaskGallery™. As seen, each GUI uses a similar approach to lay out standard windows in a three-dimensional environment.
With respect to FIG. 3A, the windows 301n and icons 302n are arranged on a palette 303 so that some objects appear to be farther away than others. Similarly, in FIG. 3B, windows 304n are arranged in an overlapping configuration on stands 305,306,307. FIG. 3C illustrates an expanded view when one of the windows 304 (FIG. 3B), such as window 307, has been selected by a user for viewing.
Another example of a three-dimensional GUI is the Three-Dimensional Workspace Manager 400 (http://www.3dwm.org) illustrated in FIG. 4. The GUI program illustrated in FIG. 4 maps remote desktops 401,402,403 into three-dimensional space, but it does not have the capability of mapping individual windows into the three-dimensional space. As described with respect to other GUIs, the Three-Dimensional Workspace Manager 400 displays the windows as squares mapped onto three-dimensional planes.
FIG. 5A illustrates yet another example of a three-dimensional GUI, known as Web Forager 500, provided by Xerox Palo Alto Research Center (“Xerox PARC”). Web Forager 400 utilizes a book metaphor: instead of scrolling through windows, users can flip pages that are mapped into the three-dimensional space as if they were using a book 501. Again, Web Forager illustrates all objects will regularity, such as, squares, rectangles, etc.
Another GUI provided for document management, known as Data Mountain 510, is illustrated in FIG. 5B. Data Mountain 510 allows a user to place document thumbnails 511n at arbitrary positions on an inclined plane 512 in a three-dimensional desktop virtual environment using a two-dimensional interaction technique. Data Mountain 510 allows users to move document thumbnails 511n between existing thumbnails. When a thumbnail is being moved, other thumbnails are moved out of the way, yet the user still sees visual cues indicating where every thumbnail will be when the movement is completed.
One of the drawbacks of currently existing GUIs, such as the ones described above, is that the each have the implicit design assumption of arranging display objects with regularity: tiled, windowed, squares, rectangles, etc. Accordingly, it would be an advancement in the art to provide a system and method which allows objects to be arranged, displayed, and manipulated in a non-uniform manner.